public class FruitFactory {
    // 根据水果类型创建水果对象
    public static Fruit createFruit(String fruitType){
        // 将水果类型转换为小写
        switch(fruitType.toLowerCase()) {
            // 如果水果类型为"apple"，则创建Apple对象
            case "apple":
                return new Apple();
            // 如果水果类型为"strawberry"，则创建Strawberry对象
            case "strawberry":
                return new Strawberry();
            // 如果水果类型为"mango"，则创建Mango对象
            case "mango":
                return new Mango();
            // 如果水果类型不是以上三种，则抛出异常
            default:
                throw new IllegalArgumentException("Invalid fruit type");
        }
    }
    // 根据水果类型和折扣策略创建水果对象
    public static Fruit createFruit(String fruitType, DiscountStrategy discountStrategy){
        // 将水果类型转换为小写
        switch(fruitType.toLowerCase()) {
            // 如果水果类型为"strawberry_discount"，则创建StrawberryWithDiscount对象
            case "strawberry_discount":
                return new StrawberryWithDiscount(discountStrategy);
            // 如果水果类型不是以上，则抛出异常
            default:
                throw new IllegalArgumentException("Invalid fruit type");
        }
    }
}
